
package modelo;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Vector;
import java.util.logging.Level;
import java.util.logging.Logger;


public class ModeloOrdenDAO extends Conexion{
	
      

    public ModeloOrdenDAO() {
    	super();
    }

    public boolean registar(ModeloOrden m){
        boolean sw = false;
        
        String tira="INSERT INTO Orden (codigo, cedula, nombre, total ,status ) VALUES('"+m.getCodigo()+"','"+m.getCedula()+"','"+m.getNombre()+"',"+m.getTotal()+",'"+m.getStatus()+"')";
        sw =  ejecutar(tira);
        return sw;
    }    

    public void registarProductos(ModeloOrden m, Vector<String> codigos,Vector<Integer> cantidades){
        
        for (int i = 0; i < codigos.size(); i++){ 
            String tira="INSERT INTO ProductoxOrden (cod_ord, cod_pro, cantidad ) VALUES('"+m.getCodigo()+"',"+codigos.elementAt(i)+","+cantidades.elementAt(i)+")";
            ejecutar(tira);
        }
       
    }

    public Vector<String []> listarProductos(ModeloOrden m){
        Vector<String []> v = new Vector<String []>();
        
        String tira="SELECT Producto.descripcion , ProductoXOrden.cantidad  FROM  Producto,ProductoXOrden,Orden WHERE Orden.status='A' AND Producto.status='A' AND Producto.codigo=ProductoXOrden.cod_pro AND Orden.codigo=ProductoXOrden.cod_ord AND Orden.codigo='"+m.getCodigo()+"'";
        try {
            ResultSet rs= consultar(tira);
            while (rs.next()){
                String [] s = new String [] {rs.getString(1), ""+rs.getDouble(2)};
                v.add(s);
            }
        } catch (SQLException ex) {
            Logger.getLogger(ModeloProductoDAO.class.getName()).log(Level.SEVERE, null, ex);
        }
        return v;
  }
    public int contarOrdenes(){
        
        String sql="SELECT COUNT(*) from Orden WHERE status='A'";
        try {
        	ResultSet rs = consultar(sql);
            while (rs.next()){
            	return rs.getInt(1)+1;
            }
        } catch (SQLException ex) {
            Logger.getLogger(ModeloProductoDAO.class.getName()).log(Level.SEVERE, null, ex);
        }
        return 0;
  }

}
